#ifndef __APP_COMMON_H__
#define __APP_COMMON_H__
#include <string.h>
#include <stdio.h>
#include <stddef.h>
#include "sys/time.h"
#include <stdlib.h>

/**
 * @brief 获取当前的时间戳（毫秒级）
 * 
 * 该函数会调用系统相关函数获取当前的时间，并将其转换为自 1970 年 1 月 1 日 00:00:00 UTC 以来的毫秒数。
 * 
 * @return long 表示当前时间的毫秒级时间戳
 */
long App_Common_GetCurrentTime(void);

/**
 * @brief 将字符数组转换为16进制字符串
 * 
 * 该函数会将输入的字符数组转换为16进制字符串，每个字符用2位16进制数表示。
 * 
 * @param array 输入的字符数组
 * @param len 字符数组的长度
 * @return char* 转换后的16进制字符串，需要手动释放内存
 */
char *App_Common_CharArrayToHex(char *array, int len);

/**
 * @brief 将16进制字符串转换为字符数组
 * 
 * 该函数会将输入的16进制字符串转换为字符数组，每个2位16进制数表示一个字符。
 * 
 * @param hex 输入的16进制字符串
 * @param len 16进制字符串的长度
 * @return char* 转换后的字符数组，需要手动释放内存
 */
char *App_Common_HexToCharArray(char *hexstr, int *array_len);

#endif /* __APP_COMMON_H__ */
